home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 033a / rbbsconn.zip / RSB2CONN.MRG < prev    next >
Text File  |  1991-10-03  |  8KB  |  223 lines

  1. 109 '  $SUBTITLE: 'VarInit - subroutine to initialize system variables'
  2. '  $PAGE
  3. '
  4. '  NAME    --  VarInit
  5. '
  6. '  INPUTS  --  PARAMETER           MEANING
  7. '              NONE
  8. '
  9. '  OUTPUTS --  NONE
  10. '
  11. '  PURPOSE --  To initialize system variable
  12. '
  13.       SUB VarInit STATIC
  14.     ZAcknowledge$ = CHR$(6)
  15.     ZAckChar$ = "C" + _
  16.             ZAcknowledge$
  17.     ZActiveMenu$ = "B"
  18.     ZActiveMessage$ = CHR$(225)
  19.     ZBackSpace$ = CHR$(8) + _
  20.                  CHR$(32) + _
  21.                  CHR$(8)
  22.     ZBackArrow$ = CHR$(29) + _
  23.                   CHR$(32) + _
  24.                   CHR$(29)
  25.     ZBaudRates$ = "      300  450 1200 2400 4800 9600144001920038400" 'DB093001
  26.     ZBellRinger$ = CHR$(7)
  27.     ZBulletinMenu$ = ""
  28.     ZWasCL = 24
  29.     ZCancel$ = CHR$(24)
  30.     ZColorReset$ = CHR$(27) + _
  31.                    "[00;37;40m"
  32.     ZConfigFileName$ = "RBBS-PC.DEF"
  33.     ZCarriageReturn$ = CHR$(13)
  34.     ZDeletedMsg$ = CHR$(226)
  35.     ZEndTransmission$ = CHR$(4)
  36.     ZEscape$ = CHR$(27)
  37.     ZExpectActiveModem = 0
  38.     ZFalse = 0
  39.     ZF1Key = 59
  40.     ZF10Key = 68
  41.     ZConfName$ = "MAIN"
  42.     CALL SetHiLite (ZTrue)
  43.     ZHomeConf$ = ""
  44.     ZInConfMenu = -1
  45.     ZLastCommand$ = "M "
  46.     ZLimitMinsPerSession = 0
  47.     ZLineFeed$ = CHR$(10)
  48.     ZLineFeeds = NOT ZFalse
  49.     ZLineEditChk$ = CHR$(9) + _
  50.                     ZLineFeed$ + _
  51.                     CHR$(11) + _
  52.                     CHR$(12) + _
  53.                     CHR$(127) + _
  54.                     CHR$(8) + _
  55.                     ZBellRinger$ + _
  56.                     CHR$(26) + _
  57.                     CHR$(227)
  58.     ZLineMes$ = SPACE$(78)          ' fixed length string workspace
  59.     ZLockStatus$ = "UM UU UB UD"
  60.     ZMenuIndex = 2
  61.     ZNAK$ = CHR$(21)
  62.     ZNoAdvance = ZFalse
  63.     ZPageLength = 23
  64.     ZParseOff = ZFalse
  65.     ZPressEnter$ = " (Press [ENTER] to Quit)"                        ' TC090101
  66.     ZPressEnterExpert$ = " ([ENTER] Quits)"                          ' TC090101
  67.     ZPressEnterNovice$ = ZPressEnter$
  68.     ZPrivateDoor = ZFalse
  69.     ZRightMargin = 72
  70.     ZReturnLineFeed$ = ZCarriageReturn$ + _
  71.                         ZLineFeed$
  72.     ZSmartTable$ = "CS PB NS FN LN SL DT TM TR TE TL RP RR CT " + _
  73.                    "C1 C2 C3 C4 C0 DD BD DB UB DL UL FI VY VN " + _
  74.                    "TY TN BN ND FS LS CN"                            ' TC090105
  75.     ZStartOfHeader$ = CHR$(1)
  76.     ZTimeLoggedOn$ = SPACE$(8)
  77.     ZTrue = NOT ZFalse
  78.     ZUpInc = -1
  79.     ZXOff$ = CHR$(19)
  80.     ZXOn$ = CHR$(17)
  81.     ZInterrupOn$ = CHR$(11) + ZCancel$ + ZXOff$ + ZXOn$ + ZCarriageReturn$
  82.     ZOptionEnd$ = ZReturnLineFeed$ + " ,("
  83.     ZCrLf$ = ZCarriageReturn$ + ZLineFeed$
  84.     ZWasLG$(1) = "Registration Check Failed"
  85.     ZWasLG$(2) = "Sysop name attempted"
  86.     ZWasLG$(3) = "Locked out attempt"
  87.     ZWasLG$(4) = "Password Attempt failed"
  88.     ZWasLG$(5) = "Auto Lockout done"
  89.     ZWasLG$(6) = "Name in use on another Node!"
  90.     ZWasLG$(7) = ""
  91.     ZWasLG$(8) = "Locked reason read!"
  92.     ZWasLG$(9) = "Expired Registration"
  93.     END SUB
  94. .
  95. .
  96. .
  97. .
  98. .
  99.  
  100. 328 IF ZBaudTest! = 0 OR ZBaudTest! = 300 THEN _
  101.        ZBaudTest! = 300 : _
  102.        ZBPS = -1 : _
  103.        GOTO 331
  104.     IF ZBaudTest! = 1200 OR ZBaudTest! = 1275 THEN _
  105.        ZBPS = -3 : _
  106.        GOTO 331
  107.     IF ZBaudTest! = 2400 THEN _
  108.        ZBPS = -4 : _
  109.        GOTO 331
  110.     IF ZBaudTest! = 4800 THEN _
  111.        ZBPS = -5 : _
  112.        GOTO 331
  113.     IF ZBaudTest! >= 7200 AND ZBaudTest! < 14400 THEN _            ' DB093001
  114.        ZBPS = -6 : _
  115.        GOTO 331
  116.     IF ZBaudTest! = 14400 THEN _                                   ' DB093001
  117.        ZBPS = -7 : _                                               ' DB093001
  118.        GOTO 331                                                    ' DB093001
  119.     IF ZBaudTest! = 19200 THEN _
  120.        ZBPS = -8 : _                                               ' DB093001
  121.        GOTO 331
  122.     IF ZBaudTest! = 38400 THEN _
  123.        ZBPS = -9 : _                                               ' DB093001
  124.        GOTO 331
  125.     GOTO 324
  126. .
  127. .
  128. .
  129. .
  130. .
  131.  
  132. 1654 ' $SUBTITLE: 'SetBaud - sub to set the baud rate in the RS232'
  133. ' $PAGE
  134. '
  135. '  NAME    -- SetBaud
  136. '
  137. '  INPUTS  --     PARAMETER                    MEANING
  138. '             ZBaudRateDivisor   NUMBER TO DIVIDE THE 8250 CHIP'S
  139. '                                 PROGRAMABLE CLOCK TO ADJUST THE
  140. '                                 BAUD RATE TO THE USER'S BAUD
  141. '                                 RATE (INDEPENDENT OF THE BAUD
  142. '                                 RATE USED TO OPEN THE COMM. PORT)
  143. '
  144. '        DESIRED BAUD        DIVISIOR (DECIMAL) TO OBTAIN DESIRED BAUD RATE
  145. '            RATE              PCjr         PC AND XT
  146. '              50             2237             2304
  147. '              75             1491             1536
  148. '             110             1017             1047
  149. '             134.5            832              857
  150. '             150              746              768
  151. '             300              373              384
  152. '             600              186              192
  153. '            1200               93               96
  154. '            1800               62               64
  155. '            2000               56               58
  156. '            2400               47               48
  157. '            3600               31               32
  158. '            4800               23               24
  159. '            7200          not available         16
  160. '            9600          not available         12
  161. '           14400          not available          8               ' DB093001
  162. '           19200          not available          6
  163. '           38400               "                 3
  164. '  OUTPUTS -- BAUD RATE SET IN THE RS232 INTERFACE
  165. '
  166. '  PURPOSE -- To set the baud rate in the RS232 interface
  167. '             inpependent of the baud rate the communications port
  168. '             was opened at
  169. '
  170.       SUB SetBaud STATIC
  171.      IF NOT ZKeepInitBaud THEN _
  172.         ZTalkToModemAt$ =  MID$(ZBaudRates$,(-5 * ZBPS),5) _
  173.      ELSE ZTalkToModemAt$ = ZModemInitBaud$
  174.      CALL Trim (ZTalkToModemAt$)
  175.      IF LEN(ZTalkToModemAt$) < 5 THEN _
  176.         ZTalkToModemAt$ = SPACE$(4 - LEN(ZTalkToModemAt$)) + _
  177.                             ZTalkToModemAt$
  178.      IF ZEightBit THEN_
  179.         Parity = 2 : _                                    ' No PARITY
  180.         DataBits = 3 : _                                  ' 8 DATA BITS
  181.         StopBits = 0 _                                    ' 1 STOP BIT
  182.      ELSE Parity = 3 : _                                  ' EVEN PARITY
  183.           DataBits = 2 : _                                ' 7 DATA BITS
  184.           StopBits = 0                                    ' 1 STOP BIT
  185.      ComSpeed! = VAL(ZTalkToModemAt$)
  186.      IF ComSpeed! > 19200 THEN _
  187.         IF ZFossil THEN _                                 ' JM051201
  188.            WasI = &H9600 _
  189.         ELSE WasI = 19200 _
  190.      ELSE WasI = ComSpeed!
  191.      IF ZFossil THEN _
  192.         CALL FosSpeed(ZComPort,WasI,Parity,DataBits,StopBits) : _
  193.         EXIT SUB
  194.      IF ComSpeed! = 2400 THEN _
  195.         ZBaudRateDivisor = &H30 + (1 * (ZComputerType = 2)) _
  196.      ELSE IF ComSpeed! = 1200 THEN _
  197.         ZBaudRateDivisor = &H60 + (3 * (ZComputerType = 2)) _
  198.      ELSE IF ComSpeed! = 9600 THEN _
  199.         ZBaudRateDivisor = &HC _
  200.      ELSE IF ComSpeed! = 300 THEN _
  201.         ZBaudRateDivisor = &H180 + (11 * (ZComputerType = 2)) _
  202.      ELSE IF ComSpeed! = 450 THEN _
  203.         ZBaudRateDivisor = &H100 + (8 * (ZComputerType = 2)) _
  204.      ELSE IF ComSpeed! = 4800 THEN _
  205.         ZBaudRateDivisor = &H18 _
  206.      ELSE IF Comspeed! = 14400 THEN _                       ' DB093001
  207.     ZBaudRateDivisor = &H8 _                            ' DB093001
  208.      ELSE IF ComSpeed! = 19200 THEN _
  209.         ZBaudRateDivisor = &H6 _
  210.      ELSE IF ComSpeed! = 38400 THEN _
  211.         ZBaudRateDivisor = &H3
  212.      MostSignifByte = FIX (ZBaudRateDivisor / 256)
  213.      LeastSignifByte = ZBaudRateDivisor - (MostSignifByte * 256)
  214.      LineCntlStatus = INP(ZLineCntlReg)
  215.      MSBSave = INP(ZMSB)
  216.      OUT ZMSB,0
  217.      OUT ZLineCntlReg,LineCntlStatus OR 128
  218.      OUT ZLSB,LeastSignifByte
  219.      OUT ZMSB,MostSignifByte
  220.      OUT ZLineCntlReg,LineCntlStatus
  221.      OUT ZMSB,MSBSave
  222.      END SUB
  223.